package com.qdsg.modulesihealsdk.utils;

import java.text.DecimalFormat;

/**
 * @Description
 * @Author WuJianFeng
 * @Date 2023/2/6 14:59
 */
public class SihealUtil {
    /**
     * 转换性别
     */
    public static int transGenderToInt(String gender){
        if (gender.equals("男")){
            return 1;
        }
        return 2;
    }
    /**
     * 转换性别
     */
    public static String transGenderToString(String gender){
        if (gender.equals("男")){
            return "1";
        }
        return "2";
    }
    /**
     * 计算Bmi
     * BMI=体重（千克）/身高的平方（米）
     */
    public static float calculateBmi(float height, float weight){
        DecimalFormat df1 = new DecimalFormat("#.0");
        return Float.valueOf(df1.format(weight / ((height/100) * (height/100))));
    }

    /**
     * 计算体脂率
     * 体脂率：1.2×BMI+0.23×年龄-5.4-10.8×性别（男为1，女为0）
     * sex: 1男 2女
     */
    public static float calculateBfp(float bmi, int age, int sex){
        DecimalFormat df1 = new DecimalFormat("#.0");
        if (sex == 1){
            return Float.valueOf(df1.format(1.2f * bmi +0.23f * age - 5.4f - 10.8f * 1));
        }else {
            return Float.valueOf(df1.format(1.2f * bmi +0.23f * age - 5.4f - 10.8f * 0));
        }
    }

    /**
     * 基础代谢率
     * 男性：BMR（kcal）=66.5+13.8×体重（kg）+5×身高（cm）-6.8×年龄
     * 女性：BMR（kcal）=665.1+9.6×体重（kg）+1.8×身高（cm）-4.7×年龄
     * sex: 1男 2女
     */
    public static float calculateBmr(float height, float weight, int age, int sex){
        DecimalFormat df1 = new DecimalFormat("#.0");
        if (sex == 1){
            return Float.valueOf(df1.format(66.5f + 13.8f * weight + 5 * height - 6.8f * age));
        }else {
            return Float.valueOf(df1.format(665.1f + 9.6f * weight + 1.8f * height - 4.7f * age));
        }
    }

}
